﻿namespace WebMvc.Models
{
    public class Sala : BaseModel
    {
        /* Id interno para la Sala. También se lo usaría para el
         * parámetro "external_id" a la hora de crear una sala. */

        /* Id de sala de OpenMeetings. Se va a setear tardíamente, por eso es nullable. */
        public int? IdOpenMeetings { get; set; }

        public string Nombre { get; set; }

        public string Comentario { get; set; }

        /* Por defecto: 'Conferencia'. */
        public TipoSala Tipo { get; set; }

        /* Acá iría el nombre de la aplicación externa a la que corresponde la sala.
         * Es solo con fines informativos y para validación. */
        public string TipoExterno { get; set; }
       
        /* Por defecto: 25. */
        public int CantidadParticipantes { get; set; }

        /* Por defecto: 'true'. */
        public bool EsPublica { get; set; }

        /* No se para qué sirve este parámetro. Me fue indistinto con
         * cualquier valor. Diría que 'true' sería el valor lógico.*/
        public bool ParaCitarse { get; set; }

        /* No se que diferencia hay si es o no para demo. Por defecto 'false'. */
        public bool ParaDemo { get; set; }
        public int DuracionDemo { get; set; }

        /* Por defecto: 'false'. */
        public bool SalaModerada { get; set; }
    }

    public enum TipoSala
    {
        Conferencia = 1,
        Audiencia = 2,
        Restringida = 3,
        Entrevista = 4
    }
}